package com.example.com.common.widget;

import android.support.annotation.DrawableRes;
import android.view.View;

/**
 * 基础的占位布局接口定义
 * Created by ChenYiYao on 2018/2/27.
 */


public interface PlaceHolderView {

    /**
     * 没有数据
     * 显示空布局
     */
    void triggerEmpty();

    /**
     * 网络错误
     * 显示一个网络错误的图标
     */
    void triggerNetError();

    /**
     * 设置描述文本
     *
     * @param msg
     */
    void triggerError(String msg);

    /**
     * 设置icon
     */
    void setIcon(@DrawableRes int draRes);

    /**
     * 显示正在加载的状态
     */
    void triggerLoading();


    /**
     * 数据加载成功
     * 隐藏当前的占位布局
     */
    void triggerOk();


    /**
     * 该方法如果传入的isOk为True则为成功状态，
     * 此时隐藏布局，反之显示空数据布局
     *
     * @param isOk 是否加载成功数据
     */
    void triggerOkOrEmpty(boolean isOk);


    /**
     * 是否显示刷新按钮，默认不显示
     *
     * @param flag
     */
    void setRefreshBtnVisible(boolean flag);

    /**
     * 添加按钮监听
     *
     * @param listener
     */
    void addRefreshBtnEvent(View.OnClickListener listener);

}
